package com.bjx.flow.domain.bo;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import org.hibernate.validator.constraints.Range;
import com.bjx.common.core.domain.group.Update;
import java.util.Date;

/**
 * @desc: 流程实例BO实体
 * @author: liushuai
 * @date: 2022/12/28
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Schema(title = "FlowInstanceBO",description = "流程实例BO实体")
public class FlowInstanceBO  {
        /**
        * 主键
        */
        @NotNull(message = "主键不能为空",groups = Update.class)
        @Schema(title = "id",description = "主键")
        private  Long id; 
        /**
        * 实例id
        */
        @NotNull(message = "实例id不能为空")
        @Size(max = 64,message = "实例id长度为1到64个字符")
        @Schema(title = "instanceId",description = "实例id")
        private  String instanceId; 
        /**
        * 业务id
        */
        @NotNull(message = "业务id不能为空")
        @Size(max = 64,message = "业务id长度为1到64个字符")
        @Schema(title = "businessId",description = "业务id")
        private  String businessId; 
        /**
        * 业务标识
        */
        @Size(max = 64,message = "业务标识长度为1到64个字符")
        @Schema(title = "businessSign",description = "业务标识")
        private  String businessSign; 
        /**
        * 流程名称
        */
        @NotNull(message = "流程名称不能为空")
        @Size(max = 128,message = "流程名称长度为1到128个字符")
        @Schema(title = "name",description = "流程名称")
        private  String name; 
        /**
        * 发起组织id
        */
        @Schema(title = "orgId",description = "发起组织id")
        private  Long orgId; 
        /**
        * 发起人
        */
        @Schema(title = "initiator",description = "发起人")
        private  Long initiator; 
        /**
        * 发起公司id
        */
        @Schema(title = "comId",description = "发起公司id")
        private  Long comId; 
        /**
        * 查询参数1
        */
        @Size(max = 64,message = "查询参数1长度为1到64个字符")
        @Schema(title = "ext1",description = "查询参数1")
        private  String ext1; 
        /**
        * 查询参数2
        */
        @Size(max = 64,message = "查询参数2长度为1到64个字符")
        @Schema(title = "ext2",description = "查询参数2")
        private  String ext2; 
        /**
        * 查询参数3
        */
        @Size(max = 64,message = "查询参数3长度为1到64个字符")
        @Schema(title = "ext3",description = "查询参数3")
        private  String ext3; 
        /**
        * 查询参数4
        */
        @Schema(title = "ext4",description = "查询参数4")
        private  Long ext4; 
        /**
        * 查询参数5
        */
        @Schema(title = "ext5",description = "查询参数5")
        private  Long ext5; 
        /**
        * 查询参数6
        */
        @Schema(title = "ext6",description = "查询参数6")
        private  Long ext6; 
}